#ifndef FOLDERCMP_H
#define FOLDERCMP_H

#include <QtCore>

enum EFOLDERCMPSTATUS
{
    eDefault = 0,
    eNotPresented = 1,
    ePresented = 2,
    eIdentity = 4,
    eDiffers = 8
};

struct FolderCmpItem
{
    QFileInfo   fileinfo;
    QMap<int, EFOLDERCMPSTATUS>  status;
};

typedef QList<FolderCmpItem> FolderCmpResult;

class FolderCmp
{
public:
    FolderCmp();
    ~FolderCmp();

    FolderCmpResult compare();
    void addDirectory(const QString& dir);
    void excludeDirectory(const QString& dir);
    void clearDirList();
private:
    QStringList m_dirList;
};

#endif // FOLDERCMP_H
